package com.jacklin.service;

import com.jacklin.DTO.CartDTO;
import com.jacklin.entity.ProductInfo;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;

/**
 * 商品信息
 * @Author:JackLin
 * @Create 2019/3/25 20:47
 */
public interface ProductInfoService {

    /*根据id查询商品信息*/
    ProductInfo findOne(String productId);

    /*查询在架的所有商品信息*/
    List<ProductInfo> findUpAll();

    /*查询所有，所有记录肯定需要分页*/
    Page<ProductInfo> findAll(Pageable pageable);

    ProductInfo save(ProductInfo productInfo);

    //加库存--加减库存不用返回，它的参数应该是购物车数据，所有定义为列表
    void increateStock(List<CartDTO> cartDTOList);

    //减库存
    void decreateStock(List<CartDTO> cartDTOList);

    //上架
    ProductInfo onSale(String productId);

    //下架
    ProductInfo offSale(String productId);
}
